home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / g_man / cat3 / standard / addtopup.z / addtopup
Encoding:
Text File  |  2002-10-03  |  6.3 KB  |  133 lines

  1.  
  2.  
  3.  
  4. aaaaddddddddttttooooppppuuuupppp((((3333GGGG))))                                                      aaaaddddddddttttooooppppuuuupppp((((3333GGGG))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      aaaaddddddddttttooooppppuuuupppp - adds items to an existing pop-up menu
  10.  
  11. CCCC SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  12.      vvvvooooiiiidddd aaaaddddddddttttooooppppuuuupppp((((lllloooonnnngggg ppppuuuupppp,,,, SSSSttttrrrriiiinnnngggg ssssttttrrrr [[[[,,,, aaaarrrrgggg]]]] ............ ))))
  13.  
  14. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  15.      _p_u_p      expects the menu identifier of the menu to which you want to
  16.               add. The menu identifier is the returned function value of the
  17.               menu creation call to either nnnneeeewwwwppppuuuupppp or ddddeeeeffffppppuuuupppp functions.
  18.  
  19.      _s_t_r      expects a pointer to the text that you want to add as a menu
  20.               item. In addition, you have the option of pairing an "item type"
  21.               flag with each menu item. There are seven menu item type flags:
  22.  
  23.               %%%%tttt   marks item text as the menu title string.
  24.  
  25.               %%%%FFFF   invokes a routine for every selection from this menu except
  26.                    those marked with a %n.  You must specify the invoked
  27.                    routine in the _a_r_g parameter.  The value of the menu item
  28.                    is used as a parameter of the executed routine.  Thus, if
  29.                    you select the third menu item, the system passes 3 as a
  30.                    parameter to the function specified by %F.
  31.  
  32.               %%%%ffff   invokes a routine when this particular menu item is
  33.                    selected.  You must specify the invoked routine in the _a_r_g
  34.                    parameter. The value of the menu item is passed as a
  35.                    parameter of the routine.  Thus, if you select the third
  36.                    menu item, the system passes 3 as a parameter to the
  37.                    routine specified by %f.  If you have also used the %F flag
  38.                    within this menu, then the result of the %f routine is
  39.                    passed as a parameter of the %F routine.
  40.  
  41.               %%%%llll   adds a line under the current entry.  You can use this as a
  42.                    visual cue to group like entries together.
  43.  
  44.               %%%%mmmm   pops up a menu whenever this menu item is selected. You
  45.                    must provide the menu identifier of the new menu in the _a_r_g
  46.                    parameter.
  47.  
  48.               %%%%nnnn   like %f, this flag invokes a routine when the user selects
  49.                    this menu item.  However, %n differs from %f in that it
  50.                    ignores the routine (if any) specified by %F. The value of
  51.                    the menu item is passed as a parameter of the executed
  52.                    routine.  Thus, if you select the third menu item, the
  53.                    system passes 3 as a parameter to the function specified by
  54.                    %f.
  55.  
  56.               %%%%xxxx_n  assigns a numeric value to this menu item.  This values
  57.                    overrides the default position-based value assigned to this
  58.                    menu item (e.g., the third item is 3).  You must enter the
  59.                    numeric value as the _n part of the text string.  Do not use
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. aaaaddddddddttttooooppppuuuupppp((((3333GGGG))))                                                      aaaaddddddddttttooooppppuuuupppp((((3333GGGG))))
  71.  
  72.  
  73.  
  74.                    the _a_r_g parameter to specify the numeric value.
  75.  
  76.               NNNNOOOOTTTTEEEE:::: If you use the vertical bar delimiter, "|", you can
  77.               specify multiple menu items in a text string.  However, because
  78.               there is only one _a_r_g parameter, the text string can contain no
  79.               more than one item type that references the _a_r_g parameter.
  80.  
  81.      _a_r_g      expects the command or submenu that you want to assign to the
  82.               menu item.  You can have only one _a_r_g parameter for each call to
  83.               aaaaddddddddttttooooppppuuuupppp.
  84.  
  85. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  86.      aaaaddddddddttttooooppppuuuupppp adds items to the bottom of an existing pop-up menu.  You can
  87.      build a menu by using a call to nnnneeeewwwwppppuuuupppp to create a menu, followed by a
  88.      call to aaaaddddddddttttooooppppuuuupppp for each menu item that you want to add to the menu. To
  89.      activate and display the menu, submit the menu to ddddooooppppuuuupppp.
  90.  
  91. EEEEXXXXAAAAMMMMPPPPLLLLEEEE
  92.      This example creates a menu with a submenu:
  93.  
  94.           submenu = newpup();
  95.           addtopup(submenu, "rotate %f", dorota);
  96.           addtopup(submenu, "translate %f", dotran);
  97.           addtopup(submenu, "scale %f", doscal);
  98.           menu = newpup();
  99.           addtopup(menu, "sample %t", 0);
  100.           addtopup(menu, "persp", 0);
  101.           addtopup(menu, "xform %m", submenu);
  102.           addtopup(menu, "greset %f", greset);
  103.  
  104.  
  105.      Because neither the "sample" menu title nor the "persp" menu item refer
  106.      to the _a_r_g parameter, you can group "sample", "persp", and "xform" in a
  107.      single call:
  108.  
  109.           addtopup(menu, "sample %t | persp | xform %m", submenu);
  110.  
  111.  
  112. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  113.      defpup, dopup, freepup, newpup, setpup
  114.  
  115. NNNNOOOOTTTTEEEESSSS
  116.      This routine is available only in immediate mode.
  117.  
  118.      When using the Distributed Graphics Library (DGL), you can not call other
  119.      DGL routines within a function that is called by a popup menu, i.e. a
  120.      function given as the argument to a %f or %F item type.
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.